查看原文
其他

2018年useR会议的一道风景线

Y叔叔 YuLabSMU 2022-09-20

今年的useR会议上,惊现一面六角贴墙!而这面墙上的六角贴,有很多是使用我的包画的,我自己画的4个六角贴也被打印在上面。

之前的帖子已经介绍了很多,使用一条指令就可以直接出六角贴(详见文后的链接),事实上这是一个支持图形语法的包,你可以用你熟悉的ggplot2语法自己慢慢玩,我以我画的treeio包的代码为例,值得显摆的是这里用到的4个包,全是我自己写的。其中树的部分由ggtree支持,geom_fontawesome来自于emojifont包,而geom_subview来自于ggimage,其它那些六角贴的图层都来自于hexSticker包。

后台回复「目录」可以拿到公众号的最新目录,翻一下就可以找到以前好多介绍这几个包的系列文章。

require(emojifont)
require(ggimage)
require(ggtree)
require(hexSticker)


set.seed(2017-03-06)
tr <- rtree(10)
dd = data.frame(id=tr$tip.label, value=abs(rnorm(10)))
p <- ggtree(tr, size=.5, color="darkgrey") + theme_transparent()
require(ggstance)
p <- facet_plot(p, panel="Trait", data=dd, geom=geom_barh, 
        mapping=aes(x=value), stat='identity', 
        fill='grey', color=NA, width=.6, size=.5)

p <- p+theme(strip.text = element_blank(),
        panel.spacing = unit(0, "lines"))

pg <- hexagon() + geom_fontawesome("fa-file-text-o", size=14, x=.54, y=.85, color="grey") +
    geom_fontawesome("fa-angle-double-right", size=6, color="#2C3E50", x=1.08, y=1) +
    geom_fontawesome("fa-angle-double-left", size=6, color="#2C3E50", x=.86, y=.7) +
    geom_subview(subview=p, x=1.42, y=.8, width=0.8, height=.9) + 
    geom_pkgname("treeio", family="Aller_Lt", size=9.5, y=1.4)

save_sticker("treeio.png", pg)

六角贴嗨起来

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存